Domen Kožar - Rethinking packaging, development and deployment
[22 July 2014]
In Python, we're trying to solve packaging problems in our own domain, but maybe someone else already solved most our problems.
In the talk I'll show how I develop and deploy Python projects that can be easily mixed with non-Python dependencies.
http://nixos.org/nix/ will be demonstrated to replace technologies in our stack: pip, virtualenv, buildout, ansible, jenkins.
While tweaking our packaging infrastructure will make things better, it's hard to fix fundamental problem of packaging with current ad-hoc solutions in Python domain.
Using Nix (http://nixos.org/nix/) for about a year gave me an insight that solving packaging problem at operating system level (bottom-up) is a better approach.
For example, wouldn't it be cool to have "virtualenv" implemented inside your package manager, so you could isolate also non-Python dependencies and not just Python packages for your project and not worry if system was updated?
We'll also show what benefits do we get by using the same tool for development and deployment and how little we have to do to deploy our application.
To see how Haskell community is touching the same subject, see blog post http://ocharles.org.uk/blog/posts/2014-02-04-how-i-develop-with-nixos.html